package com.github.bridge.dto.esign;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

@Data
public class StandardSignerInfoBean {

    @Schema(description = "签署用户id;和uniqueId必填其一，机构签时须为机构的印章管理员或经办人")
    private String accountId;

    @Schema(description = "签署用户类型;1:内部,2外部", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer accountType;

    @Schema(description = "是否允许使用无意愿签署;1:是；0否;默认为0。只支持内部用户使用。开启参数表示可以调用单独接口进行签署，也可以页面签署。关闭参数只能使用页面签署。allowApiSign和autoSign不能同时开启")
    private Integer allowApiSign;

    @Schema(description = "企业id/部门id;不为空时为企业签署，和authorizationOrganizeNo必填其一")
    private String authorizationOrganizeId;

    @Schema(description = "企业id/部门编号;不为空时为企业签署，和authorizationOrganizeId必填其一")
    private String authorizationOrganizeNo;

    @Schema(description = "是否静默签署;开启静默签署后会自动使用用户的印章和证书完成签署")
    private Boolean autoSign;

    @Schema(description = "是否可以代法定代表人签署；1：是，0：否；默认为0。传1时，用户在签订法人授权书后可使用外部机构的法人章进行签署")
    private Integer legalSignFlag;

    @Schema(description = "联系手机号;可指定用户的手机号,签署相关通知会通知该手机号，为空时取用户的联系手机号")
    private String contactMobile;

    @Schema(description = "签署文档信息;指定文档进行签署，未指定的文档将作为只读")
    private List<StandardSignDocBean> signDocDetails;

    @Schema(description = "签署顺序，多个签署人的签署顺序相同，会同时发送签署通知，可以同时进行签署")
    private Integer signOrder;

    @Schema(description = "用户唯一标识;和accountId必填其一，机构签时须为机构的印章管理员或经办人")
    private String uniqueId;





}
